﻿namespace JxcLite.Entities;

/// <summary>
/// 商业伙伴信息类。
/// </summary>
public class JxPartner : EntityBase
{
    /// <summary>
    /// 取得或设置类型（客户、供应商、物流）。
    /// </summary>
    [DisplayName("类型")]
    [Required]
    [MaxLength(50)]
    public string Type { get; set; }

    /// <summary>
    /// 取得或设置名称。
    /// </summary>
    [DisplayName("名称")]
    [Required]
    [MaxLength(100)]
    public string Name { get; set; }

    /// <summary>
    /// 取得或设置简称。
    /// </summary>
    [DisplayName("简称")]
    [MaxLength(50)]
    public string ShortName { get; set; }

    /// <summary>
    /// 取得或设置信用代码。
    /// </summary>
    [DisplayName("信用代码")]
    [MaxLength(50)]
    public string SccNo { get; set; }

    /// <summary>
    /// 取得或设置联系人。
    /// </summary>
    [DisplayName("联系人")]
    [MaxLength(50)]
    public string Contact { get; set; }

    /// <summary>
    /// 取得或设置联系电话。
    /// </summary>
    [DisplayName("联系电话")]
    [MaxLength(50)]
    public string Phone { get; set; }

    /// <summary>
    /// 取得或设置联系地址。
    /// </summary>
    [DisplayName("联系地址")]
    [MaxLength(500)]
    public string Address { get; set; }

    /// <summary>
    /// 取得或设置开票地址。
    /// </summary>
    [DisplayName("开票地址")]
    [MaxLength(500)]
    public string InvAddress { get; set; }

    /// <summary>
    /// 取得或设置开票电话。
    /// </summary>
    [DisplayName("开票电话")]
    [MaxLength(50)]
    public string InvPhone { get; set; }

    /// <summary>
    /// 取得或设置开户银行。
    /// </summary>
    [DisplayName("开户银行")]
    [MaxLength(100)]
    public string Bank { get; set; }

    /// <summary>
    /// 取得或设置银行账号。
    /// </summary>
    [DisplayName("银行账号")]
    [MaxLength(100)]
    public string Account { get; set; }

    /// <summary>
    /// 取得或设置备注。
    /// </summary>
    [DisplayName("备注")]
    public string Note { get; set; }

    /// <summary>
    /// 取得或设置附件。
    /// </summary>
    [DisplayName("附件")]
    [MaxLength(500)]
    public string Files { get; set; }
}